1. Field of the Invention
The present invention generally relates to distribution of communications traffic and, more particularly, to efficient use of multiple network access points available to a communications device.
2. Background Description
In a client connected to the Internet, the communication bottleneck is usually the link from the computer to the access point. Whether the link is a wired Ethernet card or Wi-Fi (Wireless Ethernet) compatible link, the access point hub is likely shared by many users, so that the effective bandwidth used by the client is a small fraction of the traffic passing through the hub.
Furthermore, in most operating systems one and only one link is used by all the Internet applications running on the client. When downloading data from the Internet, especially when graphic or video files are involved, this reliance upon a single link leads to long queues at the access point, thus worsening the resulting delays.
Let us consider the current situation with Windows and Unix operating systems. In general, a laptop has both an Ethernet adapter and a wireless adapter to connect to the Internet. But only one access point is selected and used to the exclusion of the other, regardless of the actual total bandwidth available. Furthermore in the Wi-Fi case, a single access point is automatically selected among a possibly large number of available access points. But in the case of the wired Ethernet adapter, you can only connect to one access point, whereas in the wireless case you can choose the access point. And there is no dynamic allocation of physical links to applications.
Take the example of the browser. It submits requests and receives replies through a single access point statically configured. The same is true for electronic mail, FTP and all downloading applications in general. They talk to the Internet through a single specified standard port assigned during configuration of the application. This port in turn is assigned by the OS to the single physical link.
Most of the known solutions to this problem are hardware based. Some of the proposed solutions involve the design and implementation of proprietary schemes. There are a number of drawbacks to these known and proposed solutions. Most of the solutions involve the modification to the physical link standards, often adding functionality. Some require the turning on and off of link adapters which are not used simultaneously. This creates delays and only one access point is available at a time. This is advantageous only when the ink capacity offered by each access point is large compared to the data traffic passing through the link. This is not the case when the link capacity is the bottleneck of the data traffic passing through such link.
Examples of prior art approaches include the disclosures of U.S. Patent Publication Number US20040223469A1 to Bahl et al., “System and method for concurrent operation of a wireless device in two disjoint wireless networks”. This is hardware based and does switching from one wireless network to the other. U.S. Patent Publication Number US20050165916A1 to Cromer et al., “System and method for concurrent WLAN and WPAN wireless modes from a single device,” describes a way to switch between a Wi-Fi wireless network and a wireless cellular phone/pda network. U.S. Patent Publication Number US20040218580A1 to Bahl et al., “Method to enable simultaneous connections to multiple wireless network using a single radio,” describes a way of turning on and off adapters to different wireless networks, but only one network is activated at any given time.
There are a number of prior art references that address routing, traffic congestion, and traffic monitoring technologies. U.S. Patent Publication Number US20030002444 to Shin et al., “Route determining method in a multi protocol label switching (MPLS) network,” describes an autonomous network where traffic is sped up through routers by specifying a path for a sequence of packets so routers do not need to look up the address of the next node, as for example in an IP Virtual Private Network. This patent application describes a scheme where the input label edge router of such network calculates one or more desirable routes from the source to the destination given the interlink capacity between the nodes of the given network. The input edge router then partitions and allocates the incoming traffic between these calculated routes. While this scheme may look attractive in theory, it would not work well in practice because the calculations are based on transient data due to the probabilistic nature of the link capacity between nodes. Further, clients would have to constantly receive data from all the relevant links, thus increasing the network traffic since there are an enormous number of such clients and such links.
U.S. Patent Publication Number US20040042398 to Peleg et al., “Method and apparatus for reducing traffic congestion by preventing allocation of the occupied portion of the link capacity and for protecting a switch from congestion by preventing allocation of some of its links,” describes 1) a method for estimating the traffic load between two network nodes over a link of a given capacity and 2) use of such traffic estimates on the links connected to a network switch in a scheme to reduce the chance of congestion through the switch by preventing allocation of portion of the links capacity to one or more clients. While this addresses switch congestion it says nothing about how to more efficiently use multiple access points available to a user communication device.
U.S. Patent Publication Number US20040057379 to Chen et al., “Method and apparatus for identifying delay causes in traffic traversing a network,” describes a monitoring scheme which measures the congestion at a given point of a network located on a unique link between a client and a server. Measurement of congestion at a link is of no help in efficient use of multiple access points by a device, and places an additional burden on the network and on computational memory resources of a user device to make use of such data.
U.S. Patent Publication Number US20050270985 to Hao et al., “Accelerated per-flow traffic estimation,” describes another network traffic measurement scheme. Additional network traffic is required to distribute the measured data and additional computational memory resources are required to use it. There is no suggestion in this disclosure of how traffic monitoring could be used to support sharing by a client of multiple access points, and other traffic monitoring schemes could more economically do so.
U.S. Pat. No. 6,427,114 to Olsson, “Method and means for traffic route control,” describes dynamic traffic control using a road network to minimize delays. Nothing is said about multiple links that are directly connected to a client, and how a client can share these links. U.S. Pat. No. 6,512,760 to Chen, “Alternate wide area network access facility for locally networked computing devices,” describes a method by which a computer with no direct wide area access to the Internet is able to access the Internet indirectly through one or more computers which have access to the web.
U.S. Pat. No. 6,574,669 to Weaver, “Method and apparatus for routing traffic within a network utilizing linear optimization,” assumes a network of links with a predetermined capacity for each link and describes a scheme for distributing a given amount of traffic from a source to a destination such that 1) the given throughput of the link is not exceeded and 2) the maximum network capacity is attained from the effective network of paths. In reality the capacity of each link is actually variable since traffic through the network is not constant over time and each link capacity must be monitored and must be reported constantly to the route calculator so as to adjust to the variable capacity of each link. This disclosure provides a routing algorithm but does not say anything about client devices or how a client could efficiently access bandwidth available from multiple links to the network. Furthermore, the disclosed routing algorithm is complex and it would be necessary to wait in order to make use of the link capacity between nodes, doing complex calculations and distributing traffic on the attached links accordingly. However, such calculated data would already be out of date by the time the computations are done.
Several prior art references are concerned with SS7 networks. SS7 provides out-of-band signaling and data interfaces between phone switches to reduce congestion in the public switch telephone network. U.S. Patent Publication Number US20040137904 to Gradischnig, “Method and device for routing messages in SS7 networks,” is concerned with source-based routing as opposed to destination-based routing. In Internet networks, packets are routed based on destination address: they are released from the source, routed through the network to the destination according to the routing tables in each node, queued when the outgoing link of a node is busy and are thrown out when they stay too long in the network. U.S. Pat. No. 5,650,998 to Angenot et al., “Method for reassigning traffic in a common channel signaling system (SS7),” is about balancing traffic from one point to another using a set of parallel links in an SS7 telecom network. It describes a method whereby the traffic that used to be carried by a dead link is redistributed among the available links and how it is reassigned to the link when it comes live again. Such link carries a set of point-to-point communication SLS field values and when the link dies, its SLS field values are reassigned to the available live links. U.S. Pat. No. 6,965,598 to Yi describes another signal traffic routing scheme in a telecom network such as SS7. This one selects a link in a link set according to link determination history and link determination data. None of these disclosures indicate how a client can share multiple links, nor do they involve any point-to-point links that are dedicated for the duration of a transmission.